scrapbox上でnote (Anki)を記述する案1
編集しやすくするために、複数のformatで書けるようにしたい
必要な情報
使用するnote type (Anki)
各field (Anki)に入れる値
UUID
note (Anki)を更新する際に必要
❌生成にはNano IDを使う
gyazoで使われている/[a-f0-9]{32}/の衝突確率
生成速度1000IDs/hで1%の衝突確率を得るのに~298billion yearsかかる
/[a-zA-Z0-9]{18}/が~219million years
このくらいあれば十分だろう
/[a-zA-Z0-9]{18}/を採用する
✅Ankiが内部で使っているID生成アルゴリズムをそのまま使った
タグ (optional)
id
exportする際のapkgのnotes table上で一意であればいいので、適当な値をprogram側で自動生成すればいい
updated
行の更新日時を使えばいい
インライン方式
一行で書く
$ gHerX6 表裏ノート Tokyo 東京
1行1ノートとして、テーブル記法で書く方法もある
/villagepump/インライン問題方式を実験してみる
テーブル方式
fieldの中身が1行で済むならこれが楽
リンクをつなげたままにできるのもよい
同じnote typeを使ったnoteが書き込まれたすべてのページがつながってしまうのは欠点かも
table:note
guid Tf6rEx
note system-cloze
Front {{c1::日本}}の{{c2::首都}}は{{c3::東京}}である
コードブロック方式
fieldに複数行詰め込みたいときはこれしかない
穴埋め問題とかだとこうせざるをえない
code:1.note
system-cloze
{{c1::follow her advice}}
{{c2::彼女の助言に従う}}
リンク置換不能なのが面倒
リンクさせたいとき、コードブロック中と同じ説明を別途記さなければならない
コードブロックと同じインデントの行を、コードブロック内の行として認識させればリンク付きにできる?
https://gyazo.com/555295a6a96aeee8770243e9eead5906
同じ説明を二回書いても大したことないか
拡張子で複数のfieldを表現する
例
code::%Y4u,z/).note
You must {{c1::carry out}} the plan as soon as possible.
君はすぐに計画{{c2::を実行する}}必要がある。
code::%Y4u,z/).note.ref
see carry out
code::%Y4u,z/).note.tag
システム英熟語,Tr.3-05
わざわざコードブロックにする必要のないのもあるな……
メインのfield以外は、table記法で表現する
例
code:;)f$&p&/.note
You must {{c1::carry out}} the plan as soon as possible.
君はすぐに計画{{c2::を実行する}}必要がある。
table:;)f$&p&/.note
ref see carry out
tag システム英熟語,Tr.3-05
2023-04-09
Scrapboxを使ったAnkiデータ構築案:穴埋め特化verを使って、欲しい物が見えてきた
field (Anki)を設定する
2023-02-14 05:56:07 最初から一般的な形式を考えるのではなく、一番必要な形式だけに特化させて始めよう
作って使わないと、利点と欠点はほとんど見えてこない
最初から一般的な形式で作ろうとすると、コストも手戻りもかかる
今欲しい物は、穴埋め問題用のnote type (Anki)のみ
穴埋め用field (Anki)一つとタグリスト一つで十分
これに特化したScrapboxで穴埋め問題 (Anki)データを作るUserScriptをまず作ろう
Scrapboxを使ったAnkiデータ構築案:穴埋め特化ver
#2023-03-24 08:22:23
#2023-02-14 02:14:31
#2023-02-13 17:11:46